package com.game.frame;


import java.awt.Graphics;
import java.util.ArrayList;
import java.util.List;

import com.game.body.Player;
import com.game.sprite.Visible;

/**
 * 游戏窗体
 * 
 * @author 林岑
 * @time 2012年6月28日 18:00:02
 */
@SuppressWarnings("serial")
public abstract class GameFrame extends BufferFrame {
	
	/**
	 * 游戏中的所有可见的组件
	 */
	private List<Visible> list = new ArrayList<Visible>();
	
	public GameFrame() {
		super(800, 600);
		new Player();
	}

	/**
	 * 添加一个可显示的对象到游戏窗体中
	 * @param paintAble
	 */
	public void append(Visible paintAble) {
		this.list.add(paintAble);
	}
	
	@Override
	public void paint(Graphics g) {
		super.paint(g);
		for (Visible v : list) {
			v.paint(g);
		}
	}
}
